package com.si3.controlador;

import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
import org.springframework.web.servlet.view.RedirectView;

import com.si3.modelo.Login;
import com.si3.modelo.PaginaInfo;
import com.si3.modelo.Profesor;
import com.si3.modelo.Propuesta;
import com.si3.modelo.Usuario;
import com.si3.servicio.PropuestasService;

public class ViewPropuestaController extends AbstractController{

	    private PropuestasService propuestasService;

	    public ViewPropuestaController()
	    {
	    }

	    public PropuestasService getPropuestasService()
	    {
	        return propuestasService;
	    }

	    public void setPropuestasService(PropuestasService propuestasService)
	    {
	        this.propuestasService = propuestasService;
	    }
	    
	    
	    protected ModelAndView handleRequestInternal(
	            HttpServletRequest request,
	            HttpServletResponse response) throws Exception
	    {	   
	 	    ModelAndView mv;	        
	        mv = new ModelAndView("viewPropuesta");   
	    	String codigo = request.getParameter("codigo"); 
	        Login login = (Login) request.getSession().getAttribute("login");
	        Propuesta propuesta=propuestasService.getPropuesta(Integer.parseInt(codigo));
		    mv.addObject("propuesta",propuesta);  
	        if (login.getUserType() == Usuario.TipoUsuario.ADMIN)
	        {
		      mv.addObject("tipo","administrador");   
	        }
	        else if (login.getUserType() == Usuario.TipoUsuario.PROFESOR)
	        {
		      mv.addObject("tipo","profesor");   
	        }
	        else if (login.getUserType() == Usuario.TipoUsuario.ALUMNO)
	        {
		      mv.addObject("tipo","alumno");   
	        }
	        return mv;
	    }
}

	    
	  
